package com.lm.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lm.pojo.ServicePackage;
import com.lm.pojo.Tag;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface ServicePackageMapper extends BaseMapper<ServicePackage> {

    List<ServicePackage> findServicePackageList(ServicePackage servicePackage);
    
    // 根据服务包ID查询详情及其关联的服务项目
    ServicePackage findServicePackageDetail(Integer servicePackageId);
    
    // 删除服务包与服务项目的关联关系
    int deleteServicePackageItemRel(@Param("servicePackageId") Integer servicePackageId, @Param("serviceItemId") Integer serviceItemId);

    // 添加服务包与服务项目的关联关系
    int addServicePackageItemRel(@Param("servicePackageId") Integer servicePackageId, @Param("serviceItemId") Integer serviceItemId);
    
    // 添加服务包与标签的关联关系
    int addServicePackageTagRel(@Param("servicePackageId") Integer servicePackageId, @Param("tagId") Integer tagId);

    // 根据服务包ID查询其关联的完整标签信息列表
    List<Tag> findTagsByServicePackageId(@Param("servicePackageId") Integer servicePackageId);

    // 删除服务包与标签的关联关系
    int deleteServicePackageTagRel(@Param("servicePackageId") Integer servicePackageId, @Param("tagId") Integer tagId);
} 
